package req

import (
	"gitee.com/zaiqiang231/zcamp-service-camp/app/model"
)

type CampListReq struct {
	model.BaseCampInfo
	PageInfo
}

type CampCreateReq struct {
	model.BaseCampInfo
	ReqImages     []model.PictureObj `json:"req_images" gorm:"-"` // 图集
	ReqConditions []ConditionReq     `json:"req_conditions" gorm:"-"`
}

type ConditionReq struct {
	ConditionId int64          `json:"condition_id" gorm:"-"`
	Children    []ConditionReq `json:"children" gorm:"-"`
}

type CampUpdateReq struct {
	model.BaseCampInfo
	ReqImages     []model.PictureObj `json:"req_images" gorm:"-"` // 图集
	ReqConditions []ConditionReq     `json:"req_conditions" gorm:"-"`
}

type CampListSearchReq struct {
	PageInfo
	Keyword       string `json:"keyword"`        //搜索关键词，为空则表示查询全部城市的营地
	Longitude     string `json:"longitude"`      //经度
	Latitude      string `json:"latitude"`       //纬度
	AdCode        string `json:"ad_code"`        //地区adcode
	ListSortType  int    `json:"list_sort_type"` //排序类型 1距离 2人气 3好评
	ConditionList []int  `json:"condition_list"` //筛选条件
}

type CampListSearchRes struct {
	model.BaseCampInfo
	Distance  int64 `json:"distance"`   //距离
	IsCollect bool  `json:"is_collect"` //是否收藏
}

type CampListRankReq struct {
	PageInfo
	Longitude string `json:"longitude"` //经度
	Latitude  string `json:"latitude"`  //纬度
	AdCode    string `json:"ad_code"`   //地区adcode
}

type CampNationNumReq struct {
	ConditionList []int `json:"condition_list"` //筛选条件
}

type CampDetailReq struct {
	CampId int64 `json:"camp_id" form:"camp_id"`
}

type CampDetailResp struct {
	User        model.UserInfo `json:"user"`
	Camp        CampDetail     `json:"camp"`
	IsCollect   bool           `json:"is_collect"`    //是否收藏
	IsAllowEdit bool           `json:"is_allow_edit"` //是否允许编辑
}

type CampDetail struct {
	model.BaseCampInfo
	ConditionList []model.CampDetailCondition `json:"condition_list"` //筛选条件
}

type CollectReq struct {
	Campid int64 `json:"campid"`
	Status int   `json:"status"` //1代表取消收藏，默认0代表加入收藏
}
